home *** CD-ROM | disk | FTP | other *** search
- The staff of the Geometry Center is proud to announce release 1.3 of
- geomview, an interactive viewer for 3- and 4-D geometric objects built
- on OOGL, an object-oriented geometry library. Geomview is loosely a
- successor of our earlier program MinneView, and the current OOGL
- libraries have many new features.
-
- To clarify the difference between geomview, OOGL, and MinneView:
- geomview is an application written using the OOGL libraries as a
- foundation. You could write an application that uses OOGL that has
- nothing to do with geomview, but geomview would be useless without
- the OOGL libraries. The new version of OOGL retains the same name as
- the old. Geomview and MinneView are both viewers: geomview is newer
- and is different enough from MinneView we are considering it a
- different program and have changed the name, instead of regarding it
- as just "the new version of" MinneView.
-
- Geomview, OOGL, and MinneView run on Iris workstations using Silicon
- Graphics GL. A Next version of geomview and OOGL using Quick
- Renderman and a Sun X-windows version of them using XGL are under
- development.
-
- Geomview and OOGL are part of an ongoing effort at the Geometry Center
- to provide interactive 3D graphics software which is particularly
- appropriate for displaying the kinds of objects and doing the kinds of
- operations of interest in mathematics research and education. You can
- compute an OOGL data file of a mathematical object that would be
- difficult or impossible to build a model of in the real world. In
- geomview, besides examining an object in ordinary Euclidean 3-space,
- you can look at objects in hyperbolic 3-space and Euclidean 4-space.
- The hyperbolic model is the projective one, where geodesics are
- straight lines and isometries are represented as 4x4 projective
- matrices. While geomview is tailored for mathematical visualization,
- it is written to be extensible and can serve as a general-purpose
- tool. Its functionality can be extended in an almost unlimited fashion
- by external modules or programs as described below.
-
- The most basic way to use geomview is to interactively examine
- geometric data loaded from pre-computed files written in one of the
- OOGL file formats. Geomview turns numerical data that specifies an
- object or a world of objects into a scene in one or more graphics
- windows on your workstation. The most direct way to interact with
- this world is by moving the objects around and changing your point of
- view using the mouse. There is a control panel that allows you to
- change various aspects of the world. You interactively control the
- appearance and motion of the objects and the motion of the points of
- view. Multiple objects can be manipulated independently and there may
- be several windows looking at the same scene with different points of
- view. OOGL data files can be generated by a C program, written by
- hand, or converted from Mathematica 3D graphics objects using
- the conversion package that is also available via anonymous ftp.
-
- In the old version of OOGL, files could only specify geometry. Object
- file formats in the new version have been extended to also include
- appearances, transformations, and cameras. Any object appearance that
- you can establish through the geomview control panel can also be
- established by including an appearance specification in the same data
- file as that object. A path of motion can be specified in a file by a
- list of 4x4 transformations, allowing you to compute a path that would
- be very hard to trace freehand with the mouse. Geomview allows you to
- hook up the motion of an unlimited number of individual objects to
- separate transform files while keeping others under interactive
- control.
-
- Almost everything else that can be done interactively through the
- graphical user interface in geomview can be specified by a lisp-like
- command language. At present it has only viewer controls, no
- variables nor control structures. Data in any of the file formats
- described above (geometry, appearances, transforms, cameras) can be
- embedded within the language. Geomview can read in and act on a
- command language file at any time during an interactive session, and
- will automatically look for a file named ".geomview" in your home
- directory to configure itself when it starts up.
-
- Finally and most importantly, geomview can act as a graphical front
- end for a separate application. Besides interactive control or
- reading from a file, geomview can also be driven by external programs
- by reading through a Unix pipe. Anytime that you can read data from a
- file in geomview you could hook up a pipe. Meanwhile, interactive
- controls still apply to all features not being externally controlled.
- For example, hooking up a pipe to a geometry allows the viewer to show
- a simulation's dynamically changing output, while hooking up a pipe to
- the motion of a geometry allows externally-driven animation. The most
- general route is for an external program to send commands through a
- pipe, since all other file formats are a subset of the command
- language. Also one can externally supply geometric objects and
- transformations, changing all or part of a geometric hierarchy on the
- fly.
-
- Another new feature of the OOGL libraries, support for four
- dimensional data types, was implemented by Charlie Gunn. All
- geometric primitives, such as polygons, meshes, and vector lists,
- now can be supplied with either 3 or 4 dimensional vertices.
- The extensive use of projective coordinates in computer
- graphics allows the addition of this support with minimal programming
- effort. Geomview comes with an external module which allows the user
- to apply four dimensional rotations to these objects. The 4-D objects
- are shown in 3-D by projection rather than by slicing.
-
- We strongly encourage mathematical programmers to consider using
- geomview as a front end for graphics. Just as a text editor allows
- you to concentrate on the content of your program instead of the
- mechanics of displaying letters on a computer screen or an efficient
- algorithm for recalling previously cut text, geomview offers a way to
- incorporate visualization into mathematical programs without sinking
- huge amounts of time and energy into graphics programming.
-
- For users familiar with MinneView, here are the major differences
- between geomview and MinneView in a nutshell: Geomview has an
- easier-to-use user interface, multiple objects with independently
- controllable motion and appearances, multiple windows for different
- views of the same world of objects, different keyboard shortcuts,
- camera fly and orbit interactive motion modes, 4D support, and a
- lisp-like command language that allows external control of the
- viewer's state (actually a superset of what can be done interactively
- with the mouse). External programs that that use shared memory will
- need updating to work. The OOGL libraries now allow communication of
- geometry, appearances, transformations and cameras between programs,
- which is supported by extensions to the OOGL object formats.
- Arbitrary portions of hierarchies may be transmitted; the process
- involves creating references to named items, then transmitting values
- for those names.
-
- Similarities between the two are: all old OOGL files that MinneView
- could read can be used by geomview. The object motion modes rotate,
- zoom, and translate still exist. External programs that used "stuff",
- a program that stuffs geometric data into a named pipe, to communicate
- with MinneView should work unchanged with geomview.
-
- Geomview may be obtained via anonymous ftp from geom.umn.edu; it is in
- the "pub" subdirectory in the file "geomview.tar.Z". After retrieving
- it (in binary ftp mode), the command "uncompress < geomview.tar.Z |
- tar xvopf -" will unpack it into the current directory. This
- distribution includes binaries, documentation, and sample data files
- for geomview and a collection of auxiliary programs.
- See the file README for details after unpacking.
-
- Please send all correspondence regarding this software via email
- to "software@geom.umn.edu".
-
- ------------------------------------------------------------------------
- Stuart Levy Tamara Munzner Mark Phillips
-